<?php

class KipemsController extends \BaseController {

	/**
	 * Display a listing of kipems
	 *
	 * @return Response
	 */
	public function index()
	{
		$agamas = array('' => 'Semua agama') + Agama::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
		$pendidikans = array('' => 'Semua pendidikan') + Pendidikan::where('is_active', '1')->orderBy('id','DSC')->lists('nama', 'id');
		$jenispekerjaans = array('' => 'Semua pekerjaan') + JenisPekerjaan::where('is_active', '1')->orderBy('id','DSC')->lists('nama', 'id');
		$lokasis = array('' => 'Semua lokasi') + Lokasi::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
		$penduduks = array('' => 'Semua penduduk') + Penduduk::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');

		return View::make('kipems.index')
						->with(compact('agamas'))
						->with(compact('pendidikans'))
						->with(compact('lokasis'))
						->with(compact('penduduks'))
						->with(compact('jenispekerjaans'));
	}

	public function check()
	{
		return View::make('kipems.check');
	}

	/**
	 * Show the form for creating a new kipem
	 *
	 * @return Response
	 */
	public function create()
	{

		$kabupatens = array();
		$kecamatans = array();
		$kelurahans = array();

		$ktp = Input::get('no_ktp');
		$kipem = Kipem::where('no_ktp', $ktp)->where('is_active', '1')->first();

		if(count($kipem) > 0){
			$agamas = array('' => '- - Pilih Agama - -') + Agama::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
			$pendidikans = array('' => '- - Pilih Jenis Pendidikan - -') + Pendidikan::where('is_active', '1')->orderBy('id','DSC')->lists('nama', 'id');
			$jenispekerjaans = array('' => '- - Pilih Jenis Pekerjaan - -') + JenisPekerjaan::where('is_active', '1')->orderBy('id','DSC')->lists('nama', 'id');
			$statuspenghasilans = array('' => '- - Pilih Status Hunian - -') + StatusPenghasilan::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');

			$provinsis = array('' => '- - Pilih Provinsi - -') + Provinsi::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
			$kabupatens = array('' => '- - Pilih Kabupaten - -') + Kabupaten::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
			$kecamatans = array('' => '- - Pilih Kecamatan - -') + Kecamatan::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
			$kelurahans = array('' => '- - Pilih Kelurahan - -') + Kelurahan::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');

			$lokasis = array('' => '- - Pilih Lokasi Penjamin - -') + Lokasi::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
			$penduduks = array('' => '- - Pilih Penduduk Penjamin - -') + Penduduk::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');

			return View::make('kipems.edit')
								->with(compact('kipem'))
								->with(compact('agamas'))
								->with(compact('pendidikans'))
								->with(compact('jenispekerjaans'))
								->with(compact('statuspenghasilans'))
								->with(compact('provinsis'))
								->with(compact('kabupatens'))
								->with(compact('kecamatans'))
								->with(compact('kelurahans'))
								->with(compact('lokasis'))
								->with(compact('penduduks'));
			}else{
				$agamas = array('' => '- - Pilih Agama - -') + Agama::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
				$pendidikans = array('' => '- - Pilih Jenis Pendidikan - -') + Pendidikan::where('is_active', '1')->orderBy('id','DSC')->lists('nama', 'id');
				$jenispekerjaans = array('' => '- - Pilih Jenis Pekerjaan - -') + JenisPekerjaan::where('is_active', '1')->orderBy('id','DSC')->lists('nama', 'id');
				$statuspenghasilans = array('' => '- - Pilih Status Hunian - -') + StatusPenghasilan::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');

				$provinsis = array('' => '- - Pilih Provinsi - -') + Provinsi::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
				$kabupatens = array('' => '- - Pilih Kabupaten - -') + Kabupaten::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
				$kecamatans = array('' => '- - Pilih Kecamatan - -') + Kecamatan::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
				$kelurahans = array('' => '- - Pilih Kelurahan - -') + Kelurahan::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');

				$lokasis = array('' => '- - Pilih Lokasi Penjamin - -') + Lokasi::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
				$penduduks = array('' => '- - Pilih Penduduk Penjamin - -') + Penduduk::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');

				return View::make('kipems.create')
									->with(compact('ktp'))
									->with(compact('kipem'))
									->with(compact('agamas'))
									->with(compact('pendidikans'))
									->with(compact('jenispekerjaans'))
									->with(compact('statuspenghasilans'))
									->with(compact('provinsis'))
									->with(compact('kabupatens'))
									->with(compact('kecamatans'))
									->with(compact('kelurahans'))
									->with(compact('lokasis'))
									->with(compact('penduduks'));
			}
	}

	/**
	 * Store a newly created kipem in storage.
	 *
	 * @return Response
	 */
	public function store()
	{
		$validator = Validator::make($data = Input::all(), Kipem::$rules);

		if ($validator->fails())
		{
			$kabupatens = Kabupaten::where('provinsi_id', '=', Input::get('provinsi_id'))->lists('nama', 'id');
			$kecamatans = Kecamatan::where('kabupaten_id', '=', Input::get('kabupaten_id'))->lists('nama', 'id');
			$kelurahans = Kelurahan::where('kecamatan_id', '=', Input::get('kecamatan_id'))->lists('nama', 'id');
			return Redirect::back()->withErrors($validator)->withInput()->with(compact('kabupatens'))->with(compact('kecamatans'))->with(compact('kelurahans'));
		}

		Kipem::create($data);

		return Redirect::route('kipems.index');
	}

	/**
	 * Display the specified kipem.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function show($id)
	{
		$kipem = Kipem::findOrFail($id);

		return View::make('kipems.show', compact('kipem'));
	}

	/**
	 * Show the form for editing the specified kipem.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function edit($id)
	{
		$kipem = Kipem::find($id);

		$agamas = array('' => '- - Pilih Agama - -') + Agama::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
		$pendidikans = array('' => '- - Pilih Jenis Pendidikan - -') + Pendidikan::where('is_active', '1')->orderBy('id','DSC')->lists('nama', 'id');
		$jenispekerjaans = array('' => '- - Pilih Jenis Pekerjaan - -') + JenisPekerjaan::where('is_active', '1')->orderBy('id','DSC')->lists('nama', 'id');
		$statuspenghasilans = array('' => '- - Pilih Status Hunian - -') + StatusPenghasilan::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');

		$provinsis = array('' => '- - Pilih Provinsi - -') + Provinsi::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
		$kabupatens = array('' => '- - Pilih Kabupaten - -') + Kabupaten::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
		$kecamatans = array('' => '- - Pilih Kecamatan - -') + Kecamatan::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
		$kelurahans = array('' => '- - Pilih Kelurahan - -') + Kelurahan::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');

		$lokasis = array('' => '- - Pilih Lokasi Penjamin - -') + Lokasi::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
		$penduduks = array('' => '- - Pilih Penduduk Penjamin - -') + Penduduk::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');

		return View::make('kipems.edit')
							->with(compact('kipem'))
							->with(compact('agamas'))
							->with(compact('pendidikans'))
							->with(compact('jenispekerjaans'))
							->with(compact('statuspenghasilans'))
							->with(compact('provinsis'))
							->with(compact('kabupatens'))
							->with(compact('kecamatans'))
							->with(compact('kelurahans'))
							->with(compact('lokasis'))
							->with(compact('penduduks'));
	}

	/**
	 * Update the specified kipem in storage.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function update($id)
	{
		$validator = Validator::make($data = Input::all(), Kipem::$rules);

		if ($validator->fails())
		{
			return Redirect::back()->withErrors($validator)->withInput();
		}

		Kipem::create($data);

		$kipem = Kipem::findOrFail($id);
		$kipem->is_active = 0;
		$kipem->save();

		return Redirect::route('kipems.index');
	}

	/**
	 * Remove the specified kipem from storage.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function destroy($id)
	{

		$kipem = Kipem::findOrFail($id);

		$kipem->is_active = 0;
		$kipem->action = 3;

		$kipem->save();

		// Kipem::destroy($id);

		return Redirect::route('kipems.index');
	}

	public function kabupatenkipem()
	{
		$id = Input::get('id');
		$kabupaten = Kabupaten::where('provinsi_id', $id)->where('is_active', '1')->get();

		return $kabupaten;
	}

	public function kecamatankipem()
	{
		$id = Input::get('id');
		$kecamatan = Kecamatan::where('kabupaten_id', $id)->where('is_active', '1')->get();

		return $kecamatan;
	}

	public function kelurahankipem()
	{
		$id = Input::get('id');
		$kelurahan = Kelurahan::where('kecamatan_id', $id)->where('is_active', '1')->get();

		return $kelurahan;
	}

	public function lokasipendamping()
	{
		$lokasi = Lokasi::where('lokasis.is_active', '1')
										->leftJoin('penduduks', 'lokasis.penduduk_id', '=', 'penduduks.id')
										->orderBy('lokasis.nama', 'ASC')
										->select(
											'lokasis.id AS id',
											'lokasis.nama AS nama',
											'lokasis.alamat AS alamat',
											'penduduks.id AS penduduk_id',
											'penduduks.nama AS penduduk_nama'
											)
										->get();

		return $lokasi;
	}

	public function lokasipendampingmodal()
	{
		$input = Input::get('search');
		$lokasi = Lokasi::where('lokasis.nama', 'LIKE', '%'.$input.'%')
										->where('lokasis.is_active', '1')
										->leftJoin('penduduks', 'lokasis.penduduk_id', '=', 'penduduks.id')
										->orderBy('lokasis.nama', 'ASC')
										->select(
											'lokasis.id AS id',
											'lokasis.nama AS nama',
											'lokasis.alamat AS alamat',
											'penduduks.id AS penduduk_id',
											'penduduks.nama AS penduduk_nama'
											)
										->get();

		return $lokasi;
	}

	public function lamakipem()
	{
		$id = Input::get('id');
		$detail_kipems = DetailKipem::where('provinsi_id', $id)->first();

		if(count($detail_kipems) > 0){
			$lamadetailkipem = Detailkipem::where('provinsi_id', $id)
									->where('is_active', '1')
									->select(
										'lama_berlaku AS lama_prov',
										'satuan_berlaku AS satuan_prov',
										'harga AS harga_prov',
										'provinsi_id'
										)
									->get();
			return $lamadetailkipem;
		}else{
			$lamakipem = Lingkungan::where('is_active', '1')
									->select(
										'lama_prov',
										'satuan_prov',
										'harga_prov',
										'lama_luar_prov',
										'satuan_luar_prov',
										'harga_luar_prov',
										'provinsi_id'
										)
									->get();
			return $lamakipem;
		}
	}

	public function lamakipemterdaftar()
	{
		$id = Input::get('id');
		$lamadetailkipem = Detailkipem::where('id', $id)
									->select(
										'lama_berlaku AS lama_prov',
										'satuan_berlaku AS satuan_prov',
										'harga AS harga_prov',
										'provinsi_id'
										)
									->get();
		return $lamadetailkipem;
	}

	public function checkperpanjangan()
	{
		return View::make('kipems.checkperpanjangan');
	}

	public function formperpanjangan($ktp)
	{
		$kipem = Kipem::where('no_ktp', $ktp)
								->leftJoin('detail_kipems', 'kipems.provinsi_id', '=', 'detail_kipems.provinsi_id')
								->leftJoin('jenis_pekerjaans', 'kipems.jenis_pekerjaan_id', '=', 'jenis_pekerjaans.id')
								->leftJoin('kabupatens', 'kipems.kabupaten_id', '=', 'kabupatens.id')
								->leftJoin('kecamatans', 'kipems.kecamatan_id', '=', 'kecamatans.id')
								->where('kipems.is_active', '1')
								->select(
									'detail_kipems.lama_berlaku AS lama_berlaku',
									'detail_kipems.satuan_berlaku AS satuan_berlaku',
									'jenis_pekerjaans.nama AS nama_pekerjaan',
									'kabupatens.nama AS nama_kabupaten',
									'kecamatans.nama AS nama_kecamatan',
									'kipems.provinsi_id AS provinsi_id',
									'kipems.nomor',
									'kipems.no_ktp',
									'kipems.nama',
									'kipems.alamat'
									)
								->first();

		$lingkungan = Lingkungan::where('lingkungan.is_active', '1')
								->leftJoin('provinsis', 'lingkungan.provinsi_id', '=', 'provinsis.id')
								->leftJoin('kabupatens', 'lingkungan.kabupaten_id', '=', 'kabupatens.id')
								->leftJoin('kecamatans', 'lingkungan.kecamatan_id', '=', 'kecamatans.id')
								->leftJoin('kelurahans', 'lingkungan.kelurahan_id', '=', 'kelurahans.id')
								->select(
									'provinsis.nama AS provinsi',
									'kabupatens.nama AS kabupaten',
									'kecamatans.nama AS kecamatan',
									'kelurahans.nama AS kelurahan',
									'lingkungan.kepala_lingkungan',
									'lingkungan.kepala_desa',
									'lingkungan.nama',
									'lingkungan.logo_kop_surat',
									'lingkungan.ttd_kepling',
									'lingkungan.ttd_keldat',
									'lingkungan.using_kepling',
									'lingkungan.using_keldat',
									'lingkungan.telp_ling',
									'lingkungan.telp_lurah'
									)
								->first();

		return View::make('kipems.formperpanjangan')
								->with(compact('lingkungan'))
								->with(compact('kipem'));
	}

	public function datatableAllPerpanjangan()
	{
		$kipems = DB::table('kipems')
    					->leftJoin('penduduks', 'kipems.penduduk_id', '=', 'penduduks.id')
    					->join('lokasis', 'kipems.lokasi_id', '=', 'lokasis.id')
    					->select(array(
    						'kipems.id',
    						'kipems.nomor',
    						'kipems.no_ktp',
    						'kipems.nama',
    						DB::raw('YEAR(CURDATE())-YEAR(kipems.tanggal_lahir) AS umur'),
    						'lokasis.nama AS lokasi',
    						'penduduks.nama AS penduduk',
    						'kipems.tanggal_lapor',
    						'kipems.tanggal_akhir'
    						));

		$kipems = $kipems->where('kipems.nomor', '!=', '');

  	if(Input::get('fl_no_ktp') != "") {
  		$kipems = $kipems->where('kipems.no_ktp', '=', Input::get('fl_no_ktp'));
  	}
		if(Input::get('fl_nama') != "") {
  		$kipems = $kipems->where('kipems.nama', 'LIKE', '%'.Input::get('fl_nama').'%');
  	}

  	$kipems = $kipems->where('kipems.is_active', '=', '1')->orderBy('kipems.nama','ASC');

		return Datatables::of($kipems)
		->add_column('operations', '<div class="btn-group">
										<a href="{{ URL::route(\'kipems.formperpanjangan\', $no_ktp) }}" class="btn btn-default"><i class="fa fa-file text-success btn-tooltip" data-toggle="tooltip" data-placement="top" data-original-title="Cetak Form"></i></a>
										<a href="{{ URL::route(\'kipems.perpanjangan\', $no_ktp) }}" class="btn btn-default"><i class="fa fa-external-link text-danger btn-tooltip" data-toggle="tooltip" data-placement="top" data-original-title="Perpanjang"></i></a>
									</div>')
		->edit_column('penduduk', '{{ $penduduk == "" ? "-" : $penduduk }}')
		->edit_column('nomor', '{{ $nomor == "" ? "-" : $nomor }}')
		->make();
	}

	public function perpanjangan($ktp)
	{
		$message = "fail";
		$kipem = Kipem::where('no_ktp', $ktp)
								->where('is_active', '1')
								->first();

		if(count($kipem) > 0){
			return View::make('kipems.perpanjangan')->with(compact('kipem'));
		}else{
			return $message;
		}
	}

	public function editperpanjangan($id)
	{
		$validator = Validator::make($data = Input::all(), Kipem::$rules);

		if ($validator->fails())
		{
			return Redirect::back()->withErrors($validator)->withInput();
		}

		Kipem::create($data);

		//---------------------------------------------------------------

		$kipem = Kipem::findOrFail($id);
		$kipem->is_active = 0;
		$kipem->save();

		return Redirect::route('kipems.index');
	}

	public function filter()
	{
		$agamas = array('' => 'Semua agama') + Agama::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
		$pendidikans = array('' => 'Semua pendidikan') + Pendidikan::where('is_active', '1')->orderBy('id','DSC')->lists('nama', 'id');
		$jenispekerjaans = array('' => 'Semua pekerjaan') + JenisPekerjaan::where('is_active', '1')->orderBy('id','DSC')->lists('nama', 'id');
		$lokasis = array('' => 'Semua lokasi') + Lokasi::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');
		$penduduks = array('' => 'Semua penduduk') + Penduduk::where('is_active', '1')->orderBy('nama','ASC')->lists('nama', 'id');

		return View::make('kipems.filter')
						->with(compact('agamas'))
						->with(compact('pendidikans'))
						->with(compact('lokasis'))
						->with(compact('penduduks'))
						->with(compact('jenispekerjaans'));
	}

	public function datatableAllKipems()
	{
		$kipems = DB::table('kipems')
    					->join('jenis_pekerjaans', 'kipems.jenis_pekerjaan_id', '=', 'jenis_pekerjaans.id')
    					->join('agamas', 'kipems.agama_id', '=', 'agamas.id')
    					->leftJoin('pendidikans', 'kipems.pendidikan_id', '=', 'pendidikans.id')
    					->leftJoin('penduduks', 'kipems.penduduk_id', '=', 'penduduks.id')
    					->join('lokasis', 'kipems.lokasi_id', '=', 'lokasis.id')
    					->select(array(
    						'kipems.id',
    						'kipems.no_ktp',
    						'kipems.nama',
    						DB::raw('YEAR(CURDATE())-YEAR(kipems.tanggal_lahir) AS umur'),
    						'kipems.jenis_kelamin',
    						'kipems.golongan_darah',
    						'kipems.status_kawin',
    						'agamas.nama AS agama',
    						'jenis_pekerjaans.nama AS jenis_pekerjaan',
    						'pendidikans.nama AS pendidikan',
    						'penduduks.nama AS penduduk',
    						'lokasis.nama AS lokasi'
    						));

  	if(Input::get('fl_no_ktp') != "") {
  		$kipems = $kipems->where('kipems.no_ktp', '=', Input::get('fl_no_ktp'));
  	}
		if(Input::get('fl_nama') != "") {
  		$kipems = $kipems->where('kipems.nama', 'LIKE', '%'.Input::get('fl_nama').'%');
  	}
  	if(Input::get('fl_jk') != "") {
  		$kipems = $kipems->where('kipems.jenis_kelamin', '=', Input::get('fl_jk'));
  	}
  	if(Input::get('fl_gol') != "") {
  		$kipems = $kipems->where('kipems.golongan_darah', '=', Input::get('fl_gol'));
  	}
  	if(Input::get('fl_agama') != "") {
  		$kipems = $kipems->where('kipems.agama_id', '=', Input::get('fl_agama'));
  	}
  	if(Input::get('fl_pendidikan') != "") {
  		$kipems = $kipems->where('kipems.pendidikan_id', '=', Input::get('fl_pendidikan'));
  	}
  	if(Input::get('fl_pekerjaan') != "") {
  		$kipems = $kipems->where('kipems.jenis_pekerjaan_id', '=', Input::get('fl_pekerjaan'));
  	}
  	if(Input::get('fl_kawin') != "") {
  		$kipems = $kipems->where('kipems.status_kawin', '=', Input::get('fl_kawin'));
  	}
  	if(Input::get('fl_penduduk') != "") {
  		$kipems = $kipems->where('penduduks.nama', 'LIKE', '%'.Input::get('fl_penduduk').'%');
  	}
  	if(Input::get('fl_lokasi') != "") {
  		$kipems = $kipems->where('lokasis.nama', 'LIKE', '%'.Input::get('fl_lokasi').'%');
  	}
  	if(Input::get('fl_umur_awal') != "") {
  		$kipems = $kipems->where(DB::raw('YEAR(CURDATE())-YEAR(kipems.tanggal_lahir)'), '>=', Input::get('fl_umur_awal'));
  	}
  	if(Input::get('fl_umur_akhir') != "") {
  		$kipems = $kipems->where(DB::raw('YEAR(CURDATE())-YEAR(kipems.tanggal_lahir)'), '<=', Input::get('fl_umur_akhir'));
  	}
  	$kipems = $kipems->where('kipems.is_active', '=', '1')->where('kipems.action', '!=', 4)->orderBy('kipems.nama','ASC');

		return Datatables::of($kipems)
		->add_column('operations', '<div class="btn-group">
										<a href="{{ URL::route(\'kipems.show\', $id) }}" class="btn btn-default"><i class="fa fa-list text-success btn-tooltip" data-toggle="tooltip" data-placement="top" data-original-title="Detail"></i></a>
										<a href="{{ URL::route(\'kipems.edit\', $id) }}" class="btn btn-default"><i class="fa fa-pencil text-warning btn-tooltip" data-toggle="tooltip" data-placement="top" data-original-title="Edit"></i></a>
										<a href="{{ URL::route(\'kipems.destroy\', $id) }}" class="btn btn-default btn-delete"><i class="fa fa-times text-danger btn-tooltip" data-toggle="tooltip" data-placement="top" data-original-title="Hapus"></i></a>
									</div>')
		->edit_column('jenis_kelamin', '{{ $jenis_kelamin == "L" ? "Laki-laki" : "Perempuan" }}')
		->make();
	}

	public function indexKipems()
	{
		$kipems_akan = Kipem::where('is_active','=','1')->where('tanggal_akhir', '<=', DB::raw('DATE_ADD(NOW(),INTERVAL 5 DAY)'))->where('tanggal_akhir', '>', DB::raw('DATE(NOW())'))->get();
		$kipems_habis = Kipem::where('is_active','=','1')->where('tanggal_akhir', '=', DB::raw('DATE(NOW())'))->get();
		$kipems_sudah = Kipem::where('is_active','=','1')->where('tanggal_akhir', '<', DB::raw('DATE(NOW())'))->get();
		$lingkungan = Lingkungan::active()->first()->toArray();

		return View::make('kipems.indexNotif')
			->with(compact('kipems_akan'))
			->with(compact('kipems_habis'))
			->with(compact('kipems_sudah'))
			->with(compact('lingkungan'));
	}

	public function getNotif()
	{
		$kipems_notif = Kipem::where('is_active','=','1')->where('tanggal_akhir', '<', DB::raw('DATE_ADD(NOW(),INTERVAL 5 DAY)'))->get()->toArray();
		$banyak_notif = count($kipems_notif);
		return $banyak_notif;
	}

	public function dataTableNotif()
	{
		$kipems = DB::table('kipems')		    					
			->where('kipems.is_active','=','1')
			->leftJoin('lokasis','kipems.lokasi_id','=','lokasis.id') 				    				
			->select(array(
				'kipems.id',
				'lokasis.lat_lng',
				'kipems.nomor',
				'kipems.no_ktp',
				'kipems.nama',
				'kipems.tanggal_akhir',
				'kipems.harga_kipem'
				));

		if(Input::get('notifAct') == 1)
		{
			$kipems = $kipems->where('tanggal_akhir', '<=', DB::raw('DATE_ADD(NOW(),INTERVAL 5 DAY)'))->where('tanggal_akhir', '>', DB::raw('DATE(NOW())'));
		} else
		if(Input::get('notifAct') == 2)
		{
			$kipems = $kipems->where('tanggal_akhir', '=', DB::raw('DATE(NOW())'));
		} else
		if(Input::get('notifAct') == 3)
		{
			$kipems = $kipems->where('tanggal_akhir', '<', DB::raw('DATE(NOW())'));
		}

		return Datatables::of($kipems)
		->add_column('Action',
			'<div class="btn-group">
				<a class="btn btn-default btn-map" data-latlng="{{ $lat_lng }}"><i class="fa fa-map-marker text-warning"></i></a>
				<a href="{{ URL::route(\'kipems.perpanjangan\', $no_ktp) }}" class="btn btn-default btn-edit" data-toggle="tooltip" data-placement="top" data-original-title="Perpanjang"><i class="fa fa-pencil text-warning"></i></a>
				<a href="{{ URL::route(\'kipems.inactive\', $id) }}" class="btn-inactive btn btn-default btn-edit" data-toggle="tooltip" data-placement="top" data-original-title="Nonaktifkan"><i class="fa fa-times text-warning"></i></a>
			</div>')
		->edit_column('harga_kipem','Rp {{ $harga_kipem == ""? "-":number_format($harga_kipem,0,",",".") }}')
		->make();
	}

	public function inactive($id)
	{
		$kipem = Kipem::findOrFail($id);

		$kipem->is_active = 0;
		$kipem->action = 4;

		$kipem->save();

		// Kipem::destroy($id);

		return Redirect::route('kipems.notif');
	}

	public function indexproses()
	{
		return View::make('kipems.proses');
	}

	public function datatableAllProses()
	{
		$kipems = DB::table('kipems')
    					->leftJoin('penduduks', 'kipems.penduduk_id', '=', 'penduduks.id')
    					->join('lokasis', 'kipems.lokasi_id', '=', 'lokasis.id')
    					->select(array(
    						'kipems.id',
    						'kipems.nomor',
    						'kipems.no_ktp',
    						'kipems.nama',
    						DB::raw('YEAR(CURDATE())-YEAR(kipems.tanggal_lahir) AS umur'),
    						'lokasis.nama AS lokasi',
    						'penduduks.nama AS penduduk',
    						'kipems.tanggal_lapor',
    						'kipems.tanggal_akhir'
    						));

		$kipems = $kipems->where('kipems.nomor', '=', '');

  	if(Input::get('fl_no_ktp') != "") {
  		$kipems = $kipems->where('kipems.no_ktp', '=', Input::get('fl_no_ktp'));
  	}
		if(Input::get('fl_nama') != "") {
  		$kipems = $kipems->where('kipems.nama', 'LIKE', '%'.Input::get('fl_nama').'%');
  	}

  	$kipems = $kipems->where('kipems.is_active', '=', '1')->orderBy('kipems.nama','ASC');

		return Datatables::of($kipems)
		->add_column('operations', '<div class="btn-group">
										<a href="{{ URL::route(\'kipems.proseskipem\', $no_ktp) }}" class="btn btn-default"><i class="fa fa-external-link text-danger btn-tooltip" data-toggle="tooltip" data-placement="top" data-original-title="Proses"></i></a>
									</div>')
		->edit_column('penduduk', '{{ $penduduk == "" ? "-" : $penduduk }}')
		->edit_column('nomor', '{{ $nomor == "" ? "-" : $nomor }}')
		->make();
	}

	public function proseskipem($ktp)
	{
		$kipem = Kipem::where('no_ktp', $ktp)
								->where('is_active', '1')
								->first();

		return View::make('kipems.proseskipem')->with(compact('kipem'));
	}

	public function editproses($id)
	{
		$validator = Validator::make($data = Input::all(), Kipem::$rules);

		if ($validator->fails())
		{
			return Redirect::back()->withErrors($validator)->withInput();
		}

		Kipem::create($data);

		//---------------------------------------------------------------

		$kipem = Kipem::findOrFail($id);
		$kipem->is_active = 0;
		$kipem->save();

		return Redirect::route('kipems.index');
	}

	public function notifMap()
	{		
		$lingkungan = Lingkungan::active()->first()->toArray();            
		$tipes = Tipe::active()->get();

		return View::make('kipems.indexNotifMap')->with(compact('lingkungan'))->with(compact('tipes'));		
	}

}
